var _ = require('lodash');

var initialState={
    lists:[] //购物车列表
}
//想要将整个对象加到购物车
/* 
    首先,需要通过产品的id来确认该产品是否已经在购物车中了
    如果没有存在
    需要加入到购物车,并且添加一个属性 quantity 购买数量
    如果已经存在
        需要将该产品找到,并且将该产品的 quantity 进行修改,在原来的基础上+1
*/

export const cart = (state = initialState, action)=>{
    var pos = _.findIndex(state, function(o) { 
        return o.id === action.payload.id; 
    });

    switch(action.type){
        case 'ADD_TO_CART':
            if(pos !== -1){
                state[pos].quantity = state[pos].quantity + 1;
                return [...state];
            }else{
                action.payload.quantity = 1;
                return [...state,action.payload]
            }
        default:
            return state;
    }
}